Skip to main content

Operatörler ve Veri Metotları

Operatörler

Aritmetik Operatörler

Bu bölümde, Python'daki temel aritmetik operatörleri ve bunların kullanımları üzerinde durulacak. Aritmetik operatörler, matematiksel işlemleri gerçekleştirmek için kullanılır.

  • a + b: İki sayının toplamını döndürür.
  • a - b: Bir sayının diğerinden çıkarılmasını sağlar.
  • a * b: İki sayının çarpımını hesaplar.
  • a / b: İki sayının bölümünü verir.
  • a % b: Bölme işleminden kalanı (mod) döndürür.
  • a ** b: Bir sayının diğer sayıya göre üssünü alır.
  • a // b: Bölme işlemi sonucunu yuvarlayarak tam sayı olarak döndürür.
70 + 35

105

Bu ifade 70 ile 35'in toplamını hesaplar ve 105 sonucunu döndürür.

"Mustafa" + " Kemal" + " ATATÜRK"

'Mustafa Kemal ATATÜRK'

Bu ifade, üç string'i birleştirir ve 'Mustafa Kemal ATATÜRK' sonucunu döndürür.

10 * 2

20

Bu ifade, 10 ile 2'nin çarpımını hesaplar ve 20 sonucunu verir.

"ZİL ÇALDI " * 3

'ZİL ÇALDI ZİL ÇALDI ZİL ÇALDI '

Bu ifade, 'ZİL ÇALDI ' string'ini üç kez tekrarlar.

25 / 4

6.25

Bu ifade, 25'in 4'e bölümünü hesaplar ve 6.25 sonucunu döndürür.

10 - 2

8

Bu ifade, 10'dan 2 çıkarır ve sonuç olarak 8 döndürür.

15 % 2

1

Bu ifade, 15'in 2'ye bölümünden kalanı hesaplar ve 1 sonucunu verir.

Aşağıdaki örneklerde, kullanıcıdan alınan girdilere göre çift ve tek sayı kontrolü ile sayıların birbirine bölünebilirliği test edilir:

sayı = int(input("Bir sayı girin: "))
if sayı % 2 == 0:
print("Girdiğiniz sayı bir çift sayıdır.")
else:
print("Girdiğiniz sayı bir tek sayıdır.")

Bir sayı girin: 14
Girdiğiniz sayı bir çift sayıdır.

Bu kod, kullanıcıdan bir sayı alır ve bu sayının çift veya tek olup olmadığını kontrol eder.

bölünen = int(input("Bir sayı girin: "))
len = int(input("Bir sayı daha girin: "))
şablon = "{} sayısı {} sayısına tam".format(bölünen,len)
print(şablon)
if bölünen %len == 0:
print(şablon, "bölünüyor!")
else:
print(şablon, "bölünmüyor!")

Bir sayı girin: 15
Bir sayı daha girin: 3
15 sayısı 3 sayısına tam
15 sayısı 3 sayısına tam bölünüyor!

Bu kod, iki sayının birbirine bölünüp bölünemediğini kontrol eder.

a = 5 / 2  # 2.5
b = 5 // 2 # 2
c = 9 // 2 # 4


d = 2**3 # 8
print(a)
print(b)
print(c)
print(d)

2.5
2
4
8

Bu kod parçası, farklı aritmetik işlemlerin sonuçlarını gösterir: iki sayının bölümü, tam sayı bölme işlemi, ve üs alma işlemi.

Atama Operatörleri

Atama operatörleri, değişkenlere değer atamak veya değişkenlerin değerlerini güncellemek için kullanılır:

  • a = b: b'nin değeri a'ya atanır.
  • a += b: a'nın üzerine b eklenir ve sonuç a'ya atanır.
  • a -= b: b, a'dan çıkarılır ve sonuç a'ya atanır.
  • a *= b: a ile b çarpılır ve sonuç a'ya atanır.
  • a /= b: a, b ile bölünür ve sonuç a'ya atanır.
  • a %= b: a, b ile bölünür ve kalan a'ya atanır.
  • a //= b: a, b ile tam sayı olarak bölünür ve sonuç a'ya atanır.
  • a **= b: a, b'nin üssü alınarak güncellenir.

Aşağıdaki örneklerde, değişkenlerin değerleri çeşitli atama operatörleri kullanılarak değiştirilir:

a = 23

Bu ifade a değişkenine 23 değerini atar.

b = 5
b = b + 5
print(b)

10

Bu ifade b değişkeninin değerini 5 artırır ve 10 sonucunu verir.

c = 5
c += 5 # c = c + 5
print(c)

10

Bu ifade de c değişkeninin değerini 5 artırır ve 10 sonucunu verir. += operatörü ile daha kısa bir şekilde yapılır.

a = 23
a -= 5
print(a)

18

Bu ifade, a değişkeninin değerinden 5 çıkarır ve 18 sonucunu döndürür.

a = 30
a /= 3
print(a)

10.0

Bu ifade, a değişkeninin değerini 3'e böler ve 10.0 sonucunu verir.

a = 20
a *= 2
print(a)

40

Bu ifade, a değişkeninin değerini iki ile çarpar ve 40 sonucunu döndürür.

a = 40
a %= 3 # a = a % 3
print(a)

1

Bu ifade, a değişkeninin değerini 3'e böler ve kalan olarak 1 sonucunu döndürür.

a = 12
a **= 2
print(a)

144

Bu ifade, a değişkeninin değerinin karesini alır ve 144 sonucunu verir.

a = 5
a //= 2
print(a)

2

Bu ifade, a değişkeninin değerini 2'ye tam sayı olarak böler ve 2 sonucunu verir.

Mantıksal Operatörler

Mantıksal operatörler, mantıksal değerler üzerinde işlemler gerçekleştirmek için kullanılır:

  • x and y: Hem x hem de y True ise True döndürür, aksi takdirde False.
  • x or y: x veya yden en az biri True ise True, her ikisi de False ise False döndürür.
  • not x: x True ise False, False ise True döndürür.

Aşağıdaki örneklerde, farklı mantıksal operatörlerle oluşturulan durumlar gösterilmiştir:

state1 = 4 > 5 and 5 > 6  # False
state2 = 4 < 5 and 5 > 6 # False
state3 = 4 < 5 and 5 < 6 # True
state4 = 4 > 5 or 5 > 6 # False
state5 = 4 < 5 or 5 > 6 # True
state6 = 4 < 5 or 5 < 6 # True
state7 = not (4 < 5 and 5 < 6) # False
state8 = not (4 > 5 or 5 > 6) # True
print(state1)
print(state2)
print(state3)
print(state4)
print(state5)
print(state6)
print(state7)
print(state8)

False
False
True
False
True
True
False
True

Bu kodlar, çeşitli mantıksal operatör kombinasyonlarının sonuçlarını gösterir.

Kimlik Operatörleri

Kimlik operatörleri, iki nesnenin aynı nesne olup olmadığını kontrol eder:

  • a is b: a ve b aynı nesneyse True, değilse False döndürür.
  • a is not b: a ve b farklı nesnelerse True, değilse False döndürür.

Aşağıdaki örneklerde, değişkenlerin kimliklerinin nasıl karşılaştırıldığı gösterilmiştir:

a = 5
b = 5
c = 6
print(a is b) # True çünkü a ve b aynı nesneyi referans alır
print(a is c) # False çünkü a ve c farklı nesneleri referans alır

True
False

Bu kodlar, aynı değerlere sahip olsalar bile, farklı nesnelerin kimlik karşılaştırmasının nasıl yapıldığını gösterir.

d = [5]
e = [5]
print(d is e) # False çünkü d ve e farklı listelerdir

False

Bu kod, aynı değerlere sahip iki listenin farklı nesneler olduğunu gösterir.

print(id(a))
print(id(b))
print(id(c))
print(id(d))
print(id(e))

Bu kodlar, değişkenlerin bellek adreslerini (kimliklerini) yazdırır. Aynı değerlere sahip değişkenler bile farklı adreslere sahip olabilir.

Üyelik Operatörleri

Üyelik operatörleri, bir öğenin bir koleksiyonun (örneğin bir liste, string veya sözlük) içinde olup olmadığını kontrol eder:

  • a in b: a, b koleksiyonunun içindeyse True, değilse False döndürür.
  • a not in b: a, b koleksiyonunun içinde değilse True, değilse False döndürür.

Aşağıdaki örneklerde, çeşitli üyelik operatörleri kullanılarak stringler ve listelerde arama yapılır:

a = "Aybars Göktuğ Ayan"
b = "Göktuğ "
c = "G ö k t u ğ"
print(a in b) # False çünkü 'Aybars Göktuğ Ayan' string'i 'Göktuğ ' string'inin içinde değil
print(b in a) # True çünkü 'Göktuğ ' string'i 'Aybars Göktuğ Ayan' string'inin içinde
print(c in a) # False çünkü 'G ö k t u ğ' string'i 'Aybars Göktuğ Ayan' string'inin içinde değil
print(c not in a) # True çünkü 'G ö k t u ğ' string'i 'Aybars Göktuğ Ayan' string'inin içinde değil
print(b not in a) # False çünkü 'Göktuğ ' string'i 'Aybars Göktuğ Ayan' string'inin içinde

False
True
False
True
False

Bu kodlar, bir string'in başka bir string'in içinde olup olmadığını kontrol eder.

METOTLAR

Python'da her bir veri tipi, üzerinde çeşitli işlemler yapmamızı sağlayan özel metotlara sahiptir. Bu metotlar, veri tiplerini daha etkili bir şekilde kullanmamıza yardımcı olur.

String Metotları

String metotları, string veri tipi üzerinde işlemler yapmamızı sağlar. Bu metotlar sayesinde stringler üzerinde çeşitli manipülasyonlar yapabiliriz:

x = "Python Programlama Kampi"
print(x[7:9]) # 'Pr' yazdırır
print(x[7:]) # 'Programlama Kampi' yazdırır
print(x[:5]) # 'Pytho' yazdırır
print(x[-5:]) # 'Kampi' yazdırır

Pr
Programlama Kampi
Pytho
Kampi

Bu kodlar, string dilimleme işlemlerini gösterir. Dilimleme, string'in belirli bir bölümünü almak için kullanılır.

a = "Türkiye Cumhuriyeti Devlet Demir Yolları"
print(a.upper()) # Tüm harfleri büyük harf yapar
print(a.lower()) # Tüm harfleri küçük harf yapar
print(a.replace("D", " ")) # 'D' harflerini boşluk ile değiştirir
print(a.split("D")) # 'D' harfine göre string'i bölüp liste döndürür

TÜRKIYE CUMHURIYETI DEVLET DEMIR YOLLARI
türkiye cumhuriyeti devlet demir yolları
Türkiye Cumhuriyeti evlet emir Yolları
['Türkiye Cumhuriyeti ', 'evlet ', 'emir Yolları']

Bu kodlar, stringleri büyük veya küçük harfe çevirme, karakterleri değiştirme ve belirli bir karaktere göre bölme gibi çeşitli string metotlarını kullanır.

Liste Metotları

Liste metotları, listeler üzerinde işlemler yapmamızı sağlar. Bu metotlar sayesinde listelere öğe ekleyebilir, öğe çıkarabilir veya listeleri değiştirebiliriz:

a = [1, 2, 3, 4, 5, 6, 7, 8, 9, "Konya", 10, "Teknik", 2013.05, True, False]
print(a[7:13]) # Listeden belirli bir aralıktaki öğeleri seçer
print(a[:13]) # Listenin başından 13. indekse kadar olan öğeleri seçer
print(a[7:]) # 7. indexten listenin sonuna kadar olan öğeleri seçer
print(a[-5:]) # Listenin sonundan başlayarak ilk beş öğeyi seçer

[8, 9, 'Konya', 10, 'Teknik', 2013.05][1, 2, 3, 4, 5, 6, 7, 8, 9, 'Konya', 10, 'Teknik', 2013.05]
[8, 9, 'Konya', 10, 'Teknik', 2013.05, True, False][10, 'Teknik', 2013.05, True, False]

Bu kodlar, listelerde dilimleme işlemlerini gösterir. Dilimleme, listenin belirli bir bölümünü almak için kullanılır.

a.append("Üniversitesi")  # 'Üniversitesi' öğesini listeye ekler

Bu kod, a listesine 'Üniversitesi' öğesini ekler.

print(a)

[1, 2, 3, 4, 5, 6, 7, 8, 9, 'Konya', 10, 'Teknik', 2013.05, True, False, 'Üniversitesi']

Bu kod, 'Üniversitesi' öğesinin listeye eklendiğini gösterir.

a.remove("Üniversitesi")  # 'Üniversitesi' öğesini listeden çıkarır

Bu kod, a listesinden 'Üniversitesi' öğesini çıkarır.

print(a)

[1, 2, 3, 4, 5, 6, 7, 8, 9, 'Konya', 10, 'Teknik', 2013.05, True, False]

Bu kod, 'Üniversitesi' öğesinin listeden çıkarıldığını gösterir.

a.pop(-1)  # Listenin son öğesini çıkarır

False

Bu kod, a listesinin son öğesi olan False'ı çıkarır.

print(a)

[1, 2, 3, 4, 5, 6, 7, 8, 9, 'Konya', 10, 'Teknik', 2013.05, True]

Bu kod, False öğesinin listeden çıkarıldığını gösterir.

list1 = [1, 2, 3, 4, 5]
del list1[2] # 2. indeksteki öğeyi (3) listeden çıkarır
print(list1)

[1, 2, 4, 5]

Bu kod, list1 listesinden 2. indeksteki öğenin (3) çıkarıldığını gösterir.

list1.clear()  # Listeyi tamamen temizler

Bu kod, list1 listesinin tüm öğelerini siler.

print(list1)

[]

Bu kod, list1 listesinin artık boş olduğunu gösterir.

Not: sort() metodu, orijinal listeyi yerinde sıralarken, sorted() fonksiyonu sıralanmış bir yeni liste oluşturur ve orijinal listeyi değiştirmez.

my_list = [5, 2, 8, 1, 3]
my_list.sort() # Listeyi sayısal olarak sıralar
print(my_list)

[1, 2, 3, 5, 8]

Bu kod, my_list listesinin sayısal olarak sıralandığını gösterir.

Hem string hem integer içeren listelerde sıralama yapılamaz çünkü Python farklı veri tiplerini karşılaştıramaz.

my_list = [5, 2, 8, 1, 3]
sorted_list = sorted(my_list) # Listeyi sayısal olarak sıralar ve yeni bir liste döndürür
print(sorted_list)
print(my_list)

[1, 2, 3, 5, 8][5, 2, 8, 1, 3]

Bu kodlar, sorted() fonksiyonunun orijinal listeyi değiştirmeden sıralanmış bir yeni liste oluşturduğunu gösterir.

my_list = [5, 2, 8, 1, 3]
my_list.sort(reverse=True) # Listeyi ters sıralar
print(my_list)

[8, 5, 3, 2, 1]

Bu kod, my_list listesinin ters sıralandığını gösterir.

my_list = ['banana', 'apple', 'orange', 'grape']
my_list.sort

() # Listeyi alfabetik olarak sıralar
print(my_list)

['apple', 'banana', 'grape', 'orange']

Bu kod, my_list listesinin alfabetik olarak sıralandığını gösterir.

Sözlükler

Sözlükler, anahtar-değer çiftlerini saklamak için kullanılan Python veri yapılarıdır. Her anahtar, bir değere karşılık gelir. Sözlükler, verileri düzenli bir şekilde saklamak ve hızlı bir şekilde erişmek için kullanılır.

student = {
"ad": "Ahmet",
"soyad": "Yılmaz",
"yaş": 20,
"bölüm": "Bilgisayar Mühendisliği",
"notlar": [80, 85, 90]
}
print(student["ad"]) # 'Ahmet' yazdırır
print(student["bölüm"]) # 'Bilgisayar Mühendisliği' yazdırır
print(student.get("yaş")) # 20 yazdırır

Ahmet
Bilgisayar Mühendisliği
20

Bu kodlar, student sözlüğünden çeşitli anahtarlarla değerleri nasıl alabileceğimizi gösterir.

student["yaş"] = 21  # 'yaş' anahtarının değerini 21 olarak günceller
student["notlar"].append(95) # 'notlar' anahtarının değerine 95 ekler

Bu kodlar, student sözlüğündeki 'yaş' anahtarının değerini günceller ve 'notlar' listesine yeni bir not ekler.

print(student)

{'ad': 'Ahmet', 'soyad': 'Yılmaz', 'yaş': 21, 'bölüm': 'Bilgisayar Mühendisliği', 'notlar': [80, 85, 90, 95]}

Bu kod, student sözlüğündeki güncellemelerin yapıldığını gösterir.

student["cinsiyet"] = "Erkek"  # 'cinsiyet' anahtarını ve değerini sözlüğe ekler

Bu kod, student sözlüğüne 'cinsiyet' anahtarını ve ona karşılık gelen 'Erkek' değerini ekler.

print(student)

{'ad': 'Ahmet', 'soyad': 'Yılmaz', 'yaş': 21, 'bölüm': 'Bilgisayar Mühendisliği', 'notlar': [80, 85, 90, 95], 'cinsiyet': 'Erkek'}

Bu kod, student sözlüğüne 'cinsiyet' anahtarının başarıyla eklendiğini gösterir.

print(student.keys())   # Sözlüğün anahtarlarını listeler
print("*" * 3)
print(student.values()) # Sözlüğün değerlerini listeler
print("*" * 3)
print(student.items()) # Sözlüğün anahtar-değer çiftlerini listeler

dict_keys(['ad', 'soyad', 'yaş', 'bölüm', 'notlar', 'cinsiyet'])


dict_values(['Ahmet', 'Yılmaz', 21, 'Bilgisayar Mühendisliği', [80, 85, 90, 95], 'Erkek'])


dict_items([('ad', 'Ahmet'), ('soyad', 'Yılmaz'), ('yaş', 21), ('bölüm', 'Bilgisayar Mühendisliği'), ('notlar', [80, 85, 90, 95]), ('cinsiyet', 'Erkek')])

Bu kodlar, student sözlüğündeki anahtarları, değerleri ve anahtar-değer çiftlerini nasıl listeleyebileceğimizi gösterir.

student.pop("cinsiyet")  # 'cinsiyet' anahtarını ve değerini sözlükten çıkarır

'Erkek'

Bu kod, student sözlüğünden 'cinsiyet' anahtarını ve değerini çıkarır.

print(student)

{'ad': 'Ahmet', 'soyad': 'Yılmaz', 'yaş': 21, 'bölüm': 'Bilgisayar Mühendisliği', 'notlar': [80, 85, 90, 95]}

Bu kod, 'cinsiyet' anahtarının student sözlüğünden başarıyla çıkarıldığını gösterir.